package main

import "os"

//panic 意味着有些出乎意料的错误发生
//惯例是:导致关键流程出现不可修复性错误的使用用 panic,其他使用用 error
func main() {
	panic("a problem")

	//panic 的一个基本用法就是在一个函数返回了错误值但是我们并不知道（或者不想）处理时终止运行
	_, err := os.Create("/tmp/file")
	if err != nil {
		panic(err)
	}

	//没有结构化异常,使用用 panic 抛出错误,recover 捕获错误
	recover()
}
